package com.yuandian.management.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuandian.api.business_monitor.po.SearchParams;
import com.yuandian.bpm.common.data.datascope.BpmBaseMapper;
import com.yuandian.api.management.entity.ConfSystem;
import com.yuandian.management.vo.SearchOptionVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 系统配置表-Mapper接口
 * @author zfsn
 * @date 2023-3-7
 */
@Mapper
public interface ConfSystemMapper extends BpmBaseMapper<ConfSystem> {

	/**
	 * 判断系统名称是否重复
	 * @param confSystem 系统对象
	 */
	Integer checkSystemNameDuplicates(@Param("param") ConfSystem confSystem);

	/**
	 * 是否批量启动或者停用系统
	 * @param ids 系统id
	 * @param isStartSystem 是否开启或者停用系统
	 * @param updateName 更新者名称
	 * @return  Integer
	 */
	Integer changeSystemStatus(@Param("ids") List<Integer> ids, @Param("isStartSystem") Integer isStartSystem, @Param("updateName") String updateName);


	/**
	 * 分页查询
	 * @param confSystem
	 * @return
	 */
    Page<ConfSystem> listPage(Page<ConfSystem> confSystemPage, @Param("params") ConfSystem confSystem);

	/**
	 * 查询默认的应用系统选项列表
	 * @param params 搜索项请求参数
	 * @return 搜索选项vo对象集合
	 */
	List<SearchOptionVo> queryDefaultAppSystemOptions(@Param("params") SearchParams params);

}